<?	
	/* Se asegura que el archivo es incluido por el index */
	defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
		$this->oTmpObject = new Categoria_tarea_frm( $this );
	
	class Categoria_tarea_frm extends Frm
	{
	function setValue ( $ncCategoriaTarea, $ncGrupo )
		{
			$cSql = "SELECT  cdCategoriaTarea,  ncCategoriaTareaPadre,  cColor
				FROM atCategoriaTarea
				WHERE ncCategoriaTarea = '$ncCategoriaTarea' AND  ncGrupo = '$ncGrupo' ";
			$aDatos = $this->oDatabase->getArray($cSql);	
			$this->setFieldsArray ( $aDatos );
		}
	function Categoria_tarea_frm( &$oModule )
		{
			$this->Frm( $oModule );
			//Crea los Objetos de los campos de edicion
			$this->aFields['ncCategoriaTarea']			= new Input( "Codigo", "ncCategoriaTarea", '', false, true );
			$this->aFields['ncCategoriaTareaPadre']	= new InputList( "Depende",  "ncCategoriaTareaPadre" );
			$this->aFields['ncGrupo']							= new InputList( "Grupo", "ncGrupo" );
			$this->aFields['cdCategoriaTarea']			= new InputText( "Nombre", "cdCategoriaTarea" );
			$this->aFields['cColor']							= new InputText( "Color", "cColor" );	
		}	
	function initializeForm()
		{
			// Si viene el Ubicacion hace el retrieve
				if ( $this->isRetrievable() && $this->aFields['ncCategoriaTarea']->getValue() && $this->aFields['ncGrupo']->getValue() )
				{
					$this->setValue( $this->aFields['ncCategoriaTarea']->getValue(), $this->aFields['ncGrupo']->getValue() );
				}
			// Configura el Titulo
				$this->setLabel( "Categoria - Tarea" );	
			return true;
		}
	function initializeField( $cField , &$oField )
		{			
			switch ( $cField )
			{
				case 'ncGrupo':
					$cSql = "SELECT ncGrupo, ncGrupo FROM atGrupo";
					$oField->setMatrix($this->oDatabase->getMatrix($cSql));
					$oField->setMandatory($this->isMandatory());
				break;
				case 'ncCategoriaTareaPadre':
					$cSql = "SELECT ncCategoriaTarea, cdCategoriaTarea FROM atCategoriaTarea";
					if ( $this->aFields['ncGrupo']->getValue()  )  
					{
						$cSql .= ' WHERE ncGrupo = ' . $this->aFields['ncGrupo']->getValue()  ;
						if ( $this->aFields['ncCategoriaTarea']->getValue()  ) 
							$cSql .= ' AND ncCategoriaTarea <> ' . $this->aFields['ncCategoriaTarea']->getValue()  ;
					}
					$oField->setMatrix($this->oDatabase->getMatrix($cSql));
					$oField->setMandatory($this->isMandatory());
				break;
			}
 		}
	}
?>